function    A302()
format long;
% 已知现在时刻事件的情况下，将来时刻事件与过去时刻事件是独立的，
% 即Markov性（Markov property）或无后效性、无记忆性。

% 一步转移矩阵
P = [0   0   1/2 1/4 1/4 0   0;
     0   0   1/3 0   2/3 0   0;
     0   0   0   0   0   1/3 2/3;
     0   0   0   0   0   1/2 1/2;
     0   0   0   0   0   3/4 1/4;
     1/2 1/2 0   0   0   0   0;
     1/4 3/4 0   0   0   0   0]
% 特征向量
[V, D, W] = eig(P')          % 返回特征值的对角矩阵D和矩阵V(其列是对应的右特征向量)，满矩阵 W(其列是对应的左特征向量)
ppi = V(:, 1)/sum(V(:, 1))   % 向量归一化
mc = dtmc(P');               % 产生离散Markov
tfRed = isreducible(mc);     % 可约性
tfErg = isergodic(mc);       % 遍历性

% 状态类的判断
subplot(3, 1, 1)
graphplot(mc, 'ColorNodes', true);
title(['Markov链的可约性（', num2str(tfRed), '），遍历性（', num2str(tfErg), '）']);

X2 = redistribute(mc, 20);              % 周期性
% 状态分布概率的可视化
subplot(3, 1, 2)
distplot(mc, X2);

% 平稳分布及混合时间
[xFix, tMix] = asymptotics(mc)
subplot(3, 1, 3);
eigplot(mc);

